import java.util.ArrayList;
import java.util.List;

class Solution {
    public List<Integer> findAnagrams(String s, String p) {
        int left=0;
        int right=0;
        int flg=0;
        char[] ss=s.toCharArray();
        char[] pp=p.toCharArray();
        int[] hash1=new int[26];
        int[] hash2=new int[26];
         List<Integer> list=new ArrayList<>();
        for(int i=0;i<pp.length;i++){
            hash1[pp[i]-97]++;
        }
        for(;right<ss.length;right++){
       
            hash2[ss[right]-97]++;
            if(right-left+1>pp.length){
                hash2[ss[left]-97]--;
                left++;
            }
            for(int i=0;i<hash1.length;i++){
                     flg=0;
               if(hash1[i]!=hash2[i]){
                 flg=1;
                    break;

               }

            }
            if(flg==0){
                    list.add(left);

            }
          
            
        }
        return list;


    }
}